package com.xxtx.trade.sysUser.dto;

import com.xxtx.trade.common.util.model.PageInfoDto;
import lombok.AllArgsConstructor;
import lombok.Data;
import org.apache.commons.beanutils.BeanUtils;

import java.io.Serializable;
import java.lang.reflect.InvocationTargetException;

/**
 * 腾讯视频号回传dto
 * */
@Data
public class TencentInfoDto extends PageInfoDto implements Serializable {
    private String muid; //设备id，由IMEI（Android应用）md5生成，或是由IDFA（iOS应用）md5生成；
    private String click_time; //点击发生的时间，由腾讯广告系统生成，取值为标准时间戳，秒级别
    private String advertiser_id; // 广告主在腾讯广告（e.qq.com）的账户id
    private String android_id; // 由android_idmd5生成，当设备id获取不到或匹配不上时，可以作为归因补充
    private String user_agent; // urlencode，当设备号获取不到或匹配不上时，可以作为归因补充
    private String campaign_id; // 推广计划id
    private String agent_id; // 代理商id
    private String click_sku_id; // DPA商品id
    private String site_set; // 广告版位id；15：优量汇，21：微信公众号和朋友圈，22：应用宝，25：QQ、腾讯看点、腾讯音乐，27：腾讯新闻，28：腾讯视频，31：应用宝，100：QQ浏览器，101：QQ、腾讯音乐及游戏，102：微信朋友圈，106：微信小游戏，107：QQ小游戏，108：App游戏，113：微信视频号，115：微信搜一搜
    private String oaid; // 安卓系统移动终端补充设备标识

    private String urlId; // 对应的urlId
    private String agentName; // 客户名称
    private String urlName; // 该条链接的urlName
    private String createTime; // 入库时间

    // 用户相关配置，查询参数等
    private String user_role; // 用户角色
    private String agentId; // 该条链接所属的客户id

    private String startTimeString;
    private String endTimeString;

    // 数据字段启用标识，0：禁用；1：启用
    private String muid_status;
    private String clickTime_status;
    private String advertiserId_status;
    private String androidId_status;
    private String userAgent_status;
    private String campaignId_status;
    private String agentId_status;
    private String clickSkuId_status;
    private String siteSet_status;
    private String oaid_status;
    private String createTime_status;
    private String userPhone_status;
    private String urlName_status;

    public void copyFrom(TencentInfoDto anotherDto) throws InvocationTargetException, IllegalAccessException {
        // 暂时装配字段参数
        BeanUtils.copyProperties(this, anotherDto);
    }

}
